//
//  Crate.h
//  SSE
//
//  Created by Matt Roman on 10/11/07.
//  Copyright 2007 __MyCompanyName__. All rights reserved.
//

#import <Cocoa/Cocoa.h>
#import "definitions.h"
#import <OpenGL/gl.h>
#import <OpenGL/glext.h>
#import <OpenGL/glu.h>

@interface Crate : NSObject 
{
	float length,width,height;
	Point3D position;
	float alpha;
	GLfloat color[4];
	Vector3D norms[6];
	Point3D	corners[24];
}

- (id)initCrateAlpha:(GLfloat)angle
				   X:(GLfloat)x 
				   Y:(GLfloat)y 
				   Z:(GLfloat)z
				   L:(float)l
				   W:(float)w
				   H:(float)h;

- (void)drawCrate;
- (void)setColorR:(GLfloat)r G:(GLfloat)g B:(GLfloat)b A:(GLfloat)a;
- (Point3D)getPosition;
- (float)getLength;
- (float)getWidth;
- (float)getAlpha;
- (Point3D *)getCorners;
- (Vector3D *)getNorms;
@end
